home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / compuserve-file-archive / 01 New Uploads / FORMAT.SDA / STEP.BIN (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  2.0 KB  |  76 lines

  1. 10 POKE55,.:POKE56,160:CLR:Z$=CHR$(.):M$=CHR$(13):Q$=CHR$(34):PRINT"[147]"
  2. 11 PRINT"ENTER DRIVE DEVICE NUMBER (4 TO 30).":PRINT"(ENTER 0 TO EXIT.)"
  3. 12 PRINT"  8[145]":INPUTD:IFD=.THENEND
  4. 13 IFD<4ORD>30THENPRINT"[147]ILLEGAL DEVICE NUMBER":GOTO11
  5. 14 POKE184,8:POKE185,.:POKE186,D:POKE183,1:POKE187,22:POKE188,8:SYS65472
  6. 15 CLOSE8:IFPEEK(783)AND1THENPRINT"[147]DEVICE";D;"[157] NOT PRESENT":GOTO11
  7. 17 OPEN15,D,15,"UI":INPUT#15,A,C$
  8. 20 PRINT"ENTER FILENAME.":PRINT"(PRESS <RETURN> TO START OVER.)"
  9. 21 F$="":INPUTF$:IFF$=""THENCLOSE15:GOTO10
  10. 22 GOSUB800:OPEN8,D,8,F$:CLOSE8:GOSUB600
  11. 23 IFATHEN20
  12. 24 IFRIGHT$(C$,2)="81"THENGOSUB700:GOTO27
  13. 25 GOSUB500
  14. 27 F=.:FF=.:PRINT"FILE: ";Q$;F$;Q$:PRINT"PRESS:"
  15. 28 PRINT"T FOR TRACK/SECTOR OF EACH BLOCK."
  16. 29 PRINT"F FOR FIRST 20 DATA BYTES OF EACH BLOCK."
  17. 30 PRINT"B FOR BYTE COUNT."
  18. 35 GETA$:IFA$="T"THENF=1:GOTO50
  19. 37 IFA$="F"THENF=1:FF=1:GOTO50
  20. 40 IFA$="B"THEN50
  21. 42 GOTO35
  22. 50 OPEN8,D,8,"#"
  23. 55 IFRIGHT$(C$,2)="81"THEN80
  24. 60 PRINT#15,"U1";8;0;T;S
  25. 65 PRINT#15,"B-P";8;P+1
  26. 70 GET#8,A$:T=ASC(A$+Z$)
  27. 75 GET#8,A$:S=ASC(A$+Z$)
  28. 80 IFFTHEN94
  29. 90 PRINT"[147]FILE: ";Q$;F$;Q$
  30. 91 PRINT"(";X$;" BLOCKS IN DIRECTORY LISTING)"
  31. 92 PRINT"BLOCKS:"
  32. 93 PRINT"BYTES:":GOTO100
  33. 94 PRINT"[147]FILE: ";Q$;F$;Q$
  34. 95 PRINT"(";X$;" BLOCKS IN DIRECTORY LISTING)"
  35. 96 PRINT"BLOCK NUMBER   TRACK   SECTOR"
  36. 97 PRINT"[163][163][163][163][163][163][163][163][163][163][163][163]   [163][163][163][163][163]   [163][163][163][163][163][163]"
  37. 100 PRINT#15,"U1";8;0;T;S
  38. 110 GET#8,A$:TT=ASC(A$+Z$)
  39. 120 GET#8,A$:SS=ASC(A$+Z$)
  40. 122 IFFTHEN130
  41. 123 PRINT"";
  42. 124 PRINTN+1:PRINT"";
  43. 125 IFTTTHENPRINT254*(N+1):GOTO150
  44. 126 PRINT254*N+SS-1:GOTO150
  45. 130 PRINTTAB(4);N+1;TAB(15);T;TAB(24);S:IFFF=.THEN150
  46. 131 PRINT"[157]";:FORI=1TO10:GET#8,A$:PRINTSTR$(ASC(A$+Z$));:NEXT:PRINT
  47. 132 PRINT"[157]";:FORI=1TO10:GET#8,A$:PRINTSTR$(ASC(A$+Z$));:NEXT:PRINT:PRINT
  48. 150 IFTT=.THEN170
  49. 160 T=TT:S=SS:N=N+1:GOTO100
  50. 170 CLOSE8
  51. 175 PRINT:PRINTN+1;"BLOCKS"
  52. 180 PRINT:PRINTN*254+SS-1;"BYTES"
  53. 185 N=.:PRINT:GOTO20
  54. 500 PRINT#15,"M-R";CHR$(144);CHR$(2);CHR$(5)
  55. 510 GET#15,A$:S=ASC(A$+Z$)
  56. 520 GET#15,A$:GET#15,A$:GET#15,A$
  57. 530 GET#15,A$:P=ASC(A$+Z$)
  58. 540 T=18:RETURN
  59. 600 INPUT#15,A,B$,C,Z
  60. 610 IFATHENPRINT:PRINTA:PRINT:PRINTB$:PRINT:PRINTC,Z
  61. 620 RETURN
  62. 700 PRINT#15,"M-R";CHR$(11);Z$;CHR$(18)
  63. 710 B$="":FORI=1TO18:GET#15,A$:B$=B$+CHR$(ASC(A$+Z$)):NEXT:GET#15,A$:I=17
  64. 720 IFMID$(B$,I,1)="("THENI=I-2:GOTO720
  65. 730 T=ASC(MID$(B$,I))
  66. 740 S=ASC(MID$(B$,I+1)+Z$):RETURN
  67. 800 OPEN8,D,.,"$"+F$
  68. 805 GET#8,A$,A$,A$,A$,A$,A$
  69. 810 GET#8,A$:IFA$<>""THEN810
  70. 815 GET#8,A$,A$,A$,B$:X=ASC(A$+Z$)+256*ASC(B$+Z$):X$=MID$(STR$(X),2)
  71. 820 GET#8,A$:IFA$=Q$THEN850
  72. 830 IFA$="B"THEN860
  73. 840 F$="":GOTO820
  74. 850 GET#8,A$:IFA$<>Q$THENF$=F$+A$:GOTO850
  75. 860 CLOSE8:OPEN8,D,.,"$":CLOSE8:RETURN
  76.